package com.zhuiyun.project.api.reservation.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import javax.persistence.Column;
import java.io.Serializable;
import java.util.Date;

/**
 * @ClassName Reservation
 * @Description TODO 预约表
 * @Author xy
 * @Date 2023/11/14 9:20
 **/
@Data
@TableName("reservation")
public class Reservation implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 主键id
     */
    private Integer id;

    /**
     * 课程id
     */
    @Column(name = "course_id")
    private Integer courseId;

    /**
     * 学员id
     */
    private Integer studentId;

    /**
     * 教练id
     */
    private Integer coachId;

    /**
     * 训练时长
     */
    private String courseTime;
    /**
     * 上课时间
     */
    private String reservationTime;

    /**
     * 预约状态（0待预约，1待训练，2进行中，3已完成）
     */
    private String reservationStatus;

    /**
     * 创建时间
     */
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss" )//DateTimeFormat 是入参格式化；
    private Date createTime;

    /**
     * 修改时间
     */
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss" )//DateTimeFormat 是入参格式化；
    private Date updateTime;

    /**
     * 课程名称
     */
    @TableField(exist = false)
    private String planName;

    /**
     * 系列名称
     */
    @TableField(exist = false)
    private String seriesName;

    /**
     * 教练名称
     */
    @TableField(exist = false)
    private String coachName;

    @TableField(exist = false)
    private String isAllocation;
}
